using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Entidades;


namespace Datos
{
    public class PeliculaD
    {        
      DBAccess dba;

	    #region CONSTRUCTOR
	      public PeliculaD()
	      {
		      this.dba = new DBAccess();
	      }
	    #endregion

	    private void CargarParametros(PeliculaE peliculaE)
	    {
		    dba.Parametros.Clear();

        this.dba.Parametros.Add("@idPelicula", peliculaE.IdPelicula);
        this.dba.Parametros.Add("@tituloOriginal", peliculaE.TituloOriginal);
        this.dba.Parametros.Add("@tituloTraducido", peliculaE.TituloTraducido);
        this.dba.Parametros.Add("@idOrigen", peliculaE.IdOrigen);
        this.dba.Parametros.Add("@idNacionalidad", peliculaE.IdNacionalidad);
        this.dba.Parametros.Add("@director", peliculaE.Director);
        this.dba.Parametros.Add("@actores", peliculaE.Actores);
        this.dba.Parametros.Add("@anio", peliculaE.Anio);
        this.dba.Parametros.Add("@duracion", peliculaE.Duracion);
        this.dba.Parametros.Add("@cantidadActual", peliculaE.CantidadActual);
        this.dba.Parametros.Add("@cantidadTotal", peliculaE.CantidadTotal);
	    }

      #region CONSULTAR
        public DataTable PeliculaConsultar(PeliculaE peliculaE)
        {
          peliculaE.PrepararPelicula();
          CargarParametros(peliculaE);
          return dba.ExecuteDataTable("PeliculaConsultar");
        }
        
        public DataTable PeliculaConsultar()
        {
          PeliculaE peliculaE = new PeliculaE();
          peliculaE.Clear();
          return this.PeliculaConsultar(peliculaE);
        }
      #endregion


	    #region INSERTAR
        public void PeliculaInsertar(PeliculaE peliculaE)
	      {
          CargarParametros(peliculaE);
		      dba.ExecuteNonQuery("PeliculasInsertar");
	      }
	    #endregion

	    #region MODIFICAR
        public void PeliculaModificar(PeliculaE peliculaE)
	      {
          CargarParametros(peliculaE);
		      dba.ExecuteNonQuery("PeliculasModificar");
	      }
	    #endregion

	    #region ELIMINAR
        public void PeliculaEliminar(PeliculaE peliculaE)
	      {
          CargarParametros(peliculaE);
		      dba.ExecuteNonQuery("PeliculaEliminar");
	      }
	    #endregion
    }
}